package br.com.fiap.DAO;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import br.com.fiap.ConnectionFactory.ConnectionFactory;
import br.com.fiap.bean.Pessoa;

public class PessoaDAO 
{

	
	public ArrayList<Pessoa> getAll() throws SQLException, ClassNotFoundException{
		
		ArrayList<Pessoa> pessoas = new ArrayList<Pessoa>();
		
		Connection conn = ConnectionFactory.getConnection();
		
		String sql = "SELECT cpf, nome FROM BANCO.PESSOA ORDER BY cpf";
		
		PreparedStatement stmt = conn.prepareStatement(sql);
		
		ResultSet rs = stmt.executeQuery();
		
		while(rs.next()){
			
			Pessoa p = new Pessoa();			
			p.setCpf(rs.getInt("cpf"));
			p.setNome(rs.getString("nome"));
			
			pessoas.add(p);
		}

		conn.close();
		
		return pessoas;
	}
	
	
		public Pessoa getUnique(int cpf) throws SQLException, ClassNotFoundException{
			
			Pessoa pessoa = new Pessoa();
			
			Connection conn = ConnectionFactory.getConnection();
			
			String sql = "SELECT cpf, nome FROM BANCO.PESSOA WHERE cpf = ?";
			
			PreparedStatement stmt = conn.prepareStatement(sql);
			stmt.setInt(1, cpf);
			
			ResultSet rs = stmt.executeQuery();
			
			if(rs.next()){
				
				pessoa.setCpf(rs.getInt("cpf"));
				pessoa.setNome(rs.getString("nome"));
			}

			conn.close();
			
			return pessoa;
		}
		
	}


